package com.reverie.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.reverie.common.pojo.CommonPageReq;
import com.reverie.dto.req.CouponQueryParam;
import com.reverie.entity.Coupon;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;
import java.util.Set;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author Rui.Zhou
 * @since 2024-02-03
 */
public interface ICouponService extends IService<Coupon> {

    Page<Coupon> queryPage(CommonPageReq<CouponQueryParam> queryPageParam);

    Boolean bind(Coupon coupon);

    Boolean cancelOrder(String couponId);

    Coupon getByCouponId(String couponId);

    List<Coupon> listByCouponCodes(Set<String> couponIds);
}
